package com.cap.bts.crmdp.dealer.coupon.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

import com.cap.bts.framework.common.domain.BaseDomain;


/**
 * The persistent class for the TM_RAW_COUPON database table.
 * 
 */
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Entity
@Table(name="TM_RAW_COUPON")
public class Coupon extends BaseDomain implements Serializable {
    
	private static final long serialVersionUID = 1L;

	private Long id;

    private CouponBatch couponBatch;

	private String couponNumber;

	private Date receiptDate;

	private String receiptMemberCar;

	private Long receiptMemberId;

	private String receiptMemberName;

	private String receiptMemberPhone;

	private Date redeemDate;

	private Long redeemDealerId;

	private String redeemMemberCar;

	private Long redeemMemberId;

	private String redeemMemberName;

	private String redeemMemberPhone;

	private Long ticketDefId;
	
	    
	public Coupon() {
    }

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
  
    @ManyToOne(optional = true, targetEntity = CouponBatch.class)
    @JoinColumn(name = "COUPON_BATCH_ID", referencedColumnName = "ID")
    public CouponBatch getCouponBatch() {
        return couponBatch;
    }

    public void setCouponBatch(CouponBatch couponBatch) {
        this.couponBatch = couponBatch;
    }

    @Column(name="COUPON_NUMBER")
    public String getCouponNumber() {
        return this.couponNumber;
    }

    public void setCouponNumber(String couponNumber) {
		this.couponNumber = couponNumber;
	}

    @Temporal(TemporalType.DATE)
    @Column(name="RECEIPT_DATE")
	public Date getReceiptDate() {
		return this.receiptDate;
	}

	public void setReceiptDate(Date receiptDate) {
		this.receiptDate = receiptDate;
	}

	   @Column(name="RECEIPT_MEMBER_CAR")
	public String getReceiptMemberCar() {
		return this.receiptMemberCar;
	}

	public void setReceiptMemberCar(String receiptMemberCar) {
		this.receiptMemberCar = receiptMemberCar;
	}

	@Column(name="RECEIPT_MEMBER_ID")
	public Long getReceiptMemberId() {
		return this.receiptMemberId;
	}

	public void setReceiptMemberId(Long receiptMemberId) {
		this.receiptMemberId = receiptMemberId;
	}

	   @Column(name="RECEIPT_MEMBER_NAME")
	public String getReceiptMemberName() {
		return this.receiptMemberName;
	}

	public void setReceiptMemberName(String receiptMemberName) {
		this.receiptMemberName = receiptMemberName;
	}

	   @Column(name="RECEIPT_MEMBER_PHONE")
	public String getReceiptMemberPhone() {
		return this.receiptMemberPhone;
	}

	public void setReceiptMemberPhone(String receiptMemberPhone) {
		this.receiptMemberPhone = receiptMemberPhone;
	}

	   @Temporal(TemporalType.DATE)
	    @Column(name="REDEEM_DATE")
	public Date getRedeemDate() {
		return this.redeemDate;
	}

	public void setRedeemDate(Date redeemDate) {
		this.redeemDate = redeemDate;
	}

	@Column(name="REDEEM_DEALER_ID")
	public Long getRedeemDealerId() {
		return this.redeemDealerId;
	}

	public void setRedeemDealerId(Long redeemDealerId) {
		this.redeemDealerId = redeemDealerId;
	}

	@Column(name="REDEEM_MEMBER_CAR")
	public String getRedeemMemberCar() {
		return this.redeemMemberCar;
	}

	public void setRedeemMemberCar(String redeemMemberCar) {
		this.redeemMemberCar = redeemMemberCar;
	}

	@Column(name="REDEEM_MEMBER_ID")
	public Long getRedeemMemberId() {
		return this.redeemMemberId;
	}

	public void setRedeemMemberId(Long redeemMemberId) {
		this.redeemMemberId = redeemMemberId;
	}

	@Column(name="REDEEM_MEMBER_NAME")
	public String getRedeemMemberName() {
		return this.redeemMemberName;
	}

	public void setRedeemMemberName(String redeemMemberName) {
		this.redeemMemberName = redeemMemberName;
	}

	@Column(name="REDEEM_MEMBER_PHONE")
	public String getRedeemMemberPhone() {
		return this.redeemMemberPhone;
	}

	public void setRedeemMemberPhone(String redeemMemberPhone) {
		this.redeemMemberPhone = redeemMemberPhone;
	}

	@Column(name="TICKET_DEF_ID")
	public Long getTicketDefId() {
		return this.ticketDefId;
	}

	public void setTicketDefId(Long ticketDefId) {
		this.ticketDefId = ticketDefId;
	}
	
}